package com.anjiplus.template.gaea.business.modules.tbscheduledgaeareport.service;

import com.anjiplus.template.gaea.business.modules.tbscheduledgaeareport.entity.TBScheduledGaeaReport;
import com.anjiplus.template.gaea.business.modules.tbscheduledgaeareport.form.TBScheduledGaeaReportForm;
import com.anjiplus.template.gaea.business.modules.tbscheduledgaeareport.vo.TBScheduledGaeaReportVO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * TBScheduledGaeaReport服务类
 * </p>
 *
 * @author admin
 * @since 2023-08-24
 */
public interface TBScheduledGaeaReportService extends IService<TBScheduledGaeaReport> {
    /**
     * 保存信息对象
     *
     * @param record 信息对象
     * @return 影响记录数
     */
    int save(TBScheduledGaeaReportForm record);

    /**
     * 根据主键更新信息对象
     *
     * @param record 信息对象
     * @return 影响记录数
     */
    int updateById(TBScheduledGaeaReportForm record);

    /**
     * 根据主键删除信息对象
     * 逻辑删除,字段改为删除态
     *
     * @param id 主键
     * @return 影响记录数
     */
    int deleteById(String id);

    /**
     * 根据主键查询信息对象
     *
     * @param id 主键
     * @return 信息对象
     */
    TBScheduledGaeaReportVO selectById(String id);

    /**
     * 根据主键查询信息对象
     *
     * @param record 查询请求条件
     * @return 信息列表
     */
    List<TBScheduledGaeaReportVO> selectAll(TBScheduledGaeaReportForm record);

    /**
     * 分页查询信息对象
     *
     * @param record 查询请求条件
     * @return 信息列表
     */
    IPage<TBScheduledGaeaReportVO> selectPage(TBScheduledGaeaReportForm record);

    /**
     * 分页查询信息对象
     *
     * @param page 分页条件   queryWrapper 查询条件
     * @return 信息列表
     */
    IPage<TBScheduledGaeaReport> getPage(IPage<TBScheduledGaeaReport> page, QueryWrapper<TBScheduledGaeaReport> queryWrapper);


}

